草庐IT

mysql - 每当我运行 rake db :migrate 时,Rails Schema 都会无意中更改

全部标签

Ruby - 更改时间实例的日期部分

我有一个值为Time.now的时间实例curr_time和另一个值为“2010年4月17日”的字符串target_date。如何将变量curr_time中的日期部分更改为target_date的值?>>curr_time=>SunFeb2123:37:27+05302010>>target_date=>"Apr17,2010"我希望curr_time像这样改变:>>curr_time=>SatApr1723:37:27+05302010如何实现? 最佳答案 如果您使用activesupport(例如在rails环境中,或者通过req

ruby - 通过 rvm 安装 Ruby 的问题(运行配置时出错)

这就是我所拥有的,有没有人有想法让它正确配置?MacBook-Air-de-Remy-Thellier:~remythellier$rvminstall1.9.2/Users/remythellier/.rvm/rubies/ruby-1.9.2-p0,thismaytakeawhiledependingonyourcpu(s)...ruby-1.9.2-p0-#fetchingruby-1.9.2-p0-#extractedto/Users/remythellier/.rvm/src/ruby-1.9.2-p0(alreadyextracted)ruby-1.9.2-p0-#conf

ruby - 在运行时用 Ruby 创建对象

PHP"bob","phone"=>"555-1212");$myObject=newstdClass();foreach($dynamicPropertiesas$key=>$value){$myObject->$key=$value;}echo$myObject->name."".$myObject->phone;?>我如何在ruby​​中执行此操作? 最佳答案 如果你想创建一个“动态”的正式类,使用Struct:>>Person=Struct.new(:name,:phone)=>Person>>bob=Person.new(

ruby-on-rails - 使用 ruby​​ 更改文件扩展名

我有一个位于远程文件夹中的.eml文件列表\\abcremote\pickup我想重命名来自的所有文件xyz.emltoxyz.html你们能帮我用ruby​​做吗?提前致谢。 最佳答案 稍微改进之前的答案:require'fileutils'Dir.glob('/path_to_file_directory/*.eml').eachdo|f|FileUtils.mvf,"#{File.dirname(f)}/#{File.basename(f,'.*')}.html"endFile.basename(f,'.*')将为您提供不带扩

ruby-on-rails - 将 Hash 更改为 ruby​​ 中的数组数组

假设我有一个散列{:facebook=>0.0,:twitter=>10.0,:linkedin=>6.0,:youtube=>8.0}现在我想把它变成一个像这样的数组[[Facebook,0.0],[Twitter,10.0],[Linkedin,6.0],[Youtube,8.0]]我可以使用逻辑来提取并将其更改为数组,但我只是想知道在ruby​​中是否有任何定义的方法可用于实现上述内容。 最佳答案 您可以使用to_a.{:facebook=>0.0,:twitter=>10.0,:linkedin=>6.0,:youtube=

ruby-on-rails - 为什么一个空的 Rails 进程每次启动时都会有不同的内存占用?

我们一直在努力找出如何通过识别内存消耗大的gem并寻找替代方案或解决方案来减少我们的Rails应用程序的启动内存占用量。但在OSX上有一种行为令我感到莫名其妙。使用全新生成的Rails应用程序(railsnewmemoryusage),没有Gemfile,没有模型,没有数据,也没有事务,启动railsc时内存每次启动时,对应的ruby​​进程的OSX显示都会有所不同,从低至60MB到高至65MB,没有明显的模式说明为什么同一个应用程序每次执行可能需要更少或更多的内存。我想这在某种程度上与Ruby分配内存的方式有关,但我不完全清楚为什么对于相同的代码且没有变量处理,它的内存分配会变化如此

ruby - 运行脚本与 IRB 控制台时的不同行为?

我有一个简单的代码片段,它定义了一个方法(在Ruby的主对象上),然后检查它是否已定义。puts"#{self}#{self.class}"deffoo;endputsself.methods.include?(:foo)当我在Ruby控制台中运行它时。我得到:mainObjecttrue如果我将此代码粘贴到.rb文件中并像这样运行该文件rubytest_script.rb,我会得到以下输出mainObjectfalse我不明白为什么我会看到这种行为。方法正在在脚本中定义,因为我可以调用该方法。我都在Ruby2.3.4上运行 最佳答案

ruby - 如何让 xcode 在运行脚本时使用正确版本的 ruby​​?

在xcode中,我有一个运行ruby​​脚本的“运行脚本”构建阶段。但是,似乎xcode正在尝试使用默认的mac1.8版本的ruby​​而不是最新版本来运行它。鉴于脚本需要一个gem,它失败并出现require错误并且错误中的路径指向/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/显然,该路径中的1.8让我产生了怀疑。如果我打开终端并运行命令ruby-v然后它会正确返回2.0.0p0我使用RVM安装并设置为默认值。如何让Xcode在正确的位置查找?还是我误解了这个错误?更新

ruby-on-rails - 为什么 Rails 将 "drive"更改为 "drife"?

我刚刚运行了这个..railsgscaffoldshared_drivedrive_name:stringdrive_path:stringsecurity_group_read:stringsecurity_group_modify:string当我打开路径localhost:3000/shared_drives/new时,header显示为NewSharedDrife当我尝试在此页面上创建一个新对象时,出现此错误ActionController::ParameterMissinginSharedDrivesController#createparamismissingortheva

ruby-on-rails - 更改 bundle 安装 Ruby 版本

我是Ruby/Rails的新手,如果这是一个微不足道的问题,请原谅我。每当我运行bundleinstall时,它都会在vendor/bundle/ruby/1.8中安装所有内容,而不是vendor/bundle/ruby/1.9.1,这是我正在使用的Ruby版本。当我运行ruby-v时,我得到了正确的1.9.1版本,但是bundleinstall出于某种原因坚持使用1.8,这导致了基本Rails功能的许多错误。如何指示bundle与1.9.1一起工作(最好删除任何Ruby1.8的踪迹)?谢谢!编辑:我已经做了一切this回答说,我没有得到1.8的踪迹再次编辑:好吧,它以某种方式工作。也